#include "stdafx.h"
#include "Color.h"

using namespace std;

rt::Color rt::Color::BLACK = rt::Color(0.0f, 0.0f, 0.0f);
rt::Color rt::Color::WHITE = rt::Color(1.0f, 1.0f, 1.0f);
rt::Color rt::Color::RED = rt::Color(1.0f, 0.0f, 0.0f);
rt::Color rt::Color::GREY = rt::Color(0.5f, 0.5f, 0.5f);

//void Color::operator += (const Color & c)
//{
//	R += c.R;  R = min(R, 1.0f);
//	G += c.G;  G = min(G, 1.0f);
//	B += c.B;  B = min(B, 1.0f);
//	A += c.A;  A = min(A, 1.0f);
//}
//
//void Color::operator -= (const Color & c)
//{
//	R -= c.R;  R = max(R, 0.0f);
//	G -= c.G;  G = max(G, 0.0f);
//	B -= c.B;  B = max(B, 0.0f);
//	A -= c.A;  A = max(A, 0.0f);
//}
//
//Color operator + (const Color & c1, const Color & c2)
//{
//	return Color(
//		min(c1.R + c2.R, 1.0f),
//		min(c1.G + c2.G, 1.0f),
//		min(c1.B + c2.B, 1.0f),
//		min(c1.A + c2.A, 1.0f));
//}
//
//Color operator - (const Color & c1, const Color & c2)
//{
//	return Color(
//		max(c1.R - c2.R, 0.0f),
//		max(c1.G - c2.G, 0.0f),
//		max(c1.B - c2.B, 0.0f),
//		max(c1.A - c2.A, 0.0f));
//}
//
//Color operator * (const Color & c1, const Color & c2)
//{
//	return Color(
//		c1.R * c2.R,
//		c1.G * c2.G,
//		c1.B * c2.B,
//		c1.A * c2.A);
//}
//
//Color operator * (const Color & c, float scalar)
//{
//	return Color(
//		c.R * scalar,
//		c.G * scalar,
//		c.B * scalar,
//		c.A * scalar);
//}
//
//Color operator * (float scalar, const Color & c)
//{
//	return Color(
//		c.R * scalar,
//		c.G * scalar,
//		c.B * scalar,
//		c.A * scalar);
//}
